package hotel.base.oversea.constant.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @Description: 渠道订单状态  参考 switch 接口文档中 附录1
 * @Param: PRO: Processed 已处理  UNPRO :未处理
 * @return:
 * @Author: Zhang·jz
 * @date: 2020/6/8
 */
public class SwitchChannelOrderStatusEnums {

    @Getter
    @AllArgsConstructor
    //Ctrip 渠道
    enum Ctrip{

        CTRIP_UNREAD_UNPRO(0,"未读未处理"),//未读未处理
        CTRIP_UNREAD_PRO(1,"未读以处理"),//未读以处理
        CTRIP_SUCC(100,"已处理"),//已处理
        CTRIP_REFUSE(101,"已拒绝");//已拒绝

        private final int code;
        private final String msg;
    }


    @Getter
    @AllArgsConstructor
    //Qunar 渠道
    enum Qunar{

        QUNAR_RES_UNPAY(1,"待预留（待支付）"),//待预留（待支付）
        CTRIP_UNARRANGE(2,"待安排"),//待安排
        CTRIP_CONFIRMED(3,"已确认"),//已确认
        CTRIP_CHECKED_IN(4,"已入住"),//已入住
        CTRIP_RES_PAED(5,"待预留（已支付）"),//待预留（已支付）
        CTRIP_UNPAY(6,"待支付"),//待支付
        CTRIP_CANCELLED(7,"已取消（OTA 拒绝）"),//已取消（OTA 拒绝）
        CTRIP_REFUNDED(8,"待退款"),//待退款"
        CTRIP_CANCELLED_PRO(9,"已取消-已处理"),//已取消-已处理
        CTRIP_UNSUBS(10,"拒绝退订"),//拒绝退订
        CTRIP_CANCELLED_UNPRO(11,"已取消-未处理"),//已取消-未处理
        CTRIP_UNPRO(13,"未处理");//未处理

        private final int code;
        private final String msg;
    }


    @Getter
    @AllArgsConstructor
            //B2B 渠道
    enum B2B{

        B2B_NEW(0,"新订单"),//新订单
        B2B_UNPRO(1,"未处理"),//未处理
        B2B_HADPRO(100,"已处理"),//已处理
        B2B_REFUSE(101,"已拒绝"),//已拒绝
        B2B_CANCELLED(500,"已取消");//已取消

        private final int code;
        private final String msg;
    }



    @Getter
    @AllArgsConstructor
            //B2BOffLine 渠道
    enum B2BOffLine{

        B2BOffLine_WAITPRO(1,"待处理"),//待处理
        B2BOffLine_ACCEPTED(2,"已接受"),//已接受
        B2BOffLine_REFUSE(3,"已拒绝"),//已拒绝
        B2BOffLine_CANCELLED(4,"已取消"),//已取消
        B2BOffLine_REJECT_CANCEL(5,"拒绝取消"),//拒绝取消
        B2BOffLine_UNPRO(6,"未处理");//未处理

        private final int code;
        private final String msg;
    }



    @Getter
    @AllArgsConstructor
            //A(TC) 渠道
    enum A_TC{

        A_TC_UNCONFIRM(1,"待确认"),//待确认
        A_TC_CONFIRMED_UNPRO(2,"已确认-待处理"),//已确认-待处理
        A_TC_CANCELLING_UNPRO(3,"取消中-待处理"),//取消中-待处理
        A_TC_CONFIRMED_PRO(4,"已确认-已处理"),//已确认-已处理
        A_TC_CANCELLED_PRO(5,"已取消-已处理"),//已取消-已处理
        A_TC_UNPRO(6,"未处理");//未处理

        private final int code;
        private final String msg;
    }

}
